﻿using System;
using System.Runtime.InteropServices;

namespace DirectShow
{
	[ComImport, System.Security.SuppressUnmanagedCodeSecurity,
	Guid("F185FE76-E64E-11d2-B76E-00C04FB6BD3D"),
	InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
	public interface IAMPushSource : IAMLatency
	{
		[PreserveSig]
		new int GetLatency(out long prtLatency);

		[PreserveSig]
		int GetPushSourceFlags([Out] out AMPushSourceFlags pFlags);

		[PreserveSig]
		int SetPushSourceFlags([In] AMPushSourceFlags Flags);

		[PreserveSig]
		int SetStreamOffset([In] long rtOffset);

		[PreserveSig]
		int GetStreamOffset([Out] out long prtOffset);

		[PreserveSig]
		int GetMaxStreamOffset([Out] out long prtMaxOffset);

		[PreserveSig]
		int SetMaxStreamOffset([In] long rtMaxOffset);
	}


}
